home *** CD-ROM | disk | FTP | other *** search
/ Collection of Internet / Collection of Internet.iso / protocol / standard / scsi / scsi1_do.7 < prev   
Internet Message Format  |  1993-07-14  |  46KB

  1. From coffin@ROCKY2.ROCKEFELLER.EDU Thu Mar 22 08:13:03 1990
  2. Flags: 000000000001
  3. Return-Path: <coffin@ROCKY2.ROCKEFELLER.EDU>
  4. Received: from ROCKY2.ROCKEFELLER.EDU by rascal.ics.utexas.edu. (4.0/SMI-4.0)
  5.     id AA28432; Thu, 22 Mar 90 08:12:52 CST
  6. Received: by ROCKY2.ROCKEFELLER.EDU (5.61/1.34)
  7.     id AA14797; Thu, 22 Mar 90 09:13:04 -0500
  8. Message-Id: <9003221413.AA14797@ROCKY2.ROCKEFELLER.EDU>
  9. To: werner@rascal.ics.utexas.edu
  10. Subject: scsiDocs-Part 7 of 7
  11. Date: Thu, 22 Mar 90 09:12:52 -0500
  12. From: coffin@ROCKY2.ROCKEFELLER.EDU
  13.  
  14.  
  15.  
  16. .fo Appendix A                           #
  17. .pn 174
  18. Appendixes    (These Appendixes are not part of American National Standard 
  19.               Small Computer System Interface, X3.131.198_, but are included 
  20.               for information only.)
  21.  
  22. Appendix A
  23.  
  24. SCSI Signal Sequence Example
  25.  
  26. This appendix is included to provide an example of the timing of an SCSI 
  27. command that includes most of the SCSI bus phases (Figure A1).  In this 
  28. example, the target does not disconnect from the SCSI bus prior to completing 
  29. the command.
  30.  
  31.   The following notes apply to Figure A1:
  32.  
  33. GENERAL NOTE:
  34.  
  35.   In a typical system, the computer's host adapter acts as the "initiator" and 
  36. the peripheral device's controller acts as the "target".  In general, this 
  37. standard does not attempt to distinguish between a computer and its host 
  38. adapter.  These functions may be separate or merged.  The term "initiator" 
  39. encompasses both.  Similarly, the term "target" does not distinguish between 
  40. the peripheral device and its controller, which may be separate or merged.  
  41. The term "SCSI device" refers to a device that may be connected to the SCSI 
  42. bus.  An SCSI device may act as in the initiator role, the target role, or 
  43. both roles.
  44.  
  45. TIMING NOTES:
  46.  
  47. Bus Settle Delay.  The minimum time to wait for the SCSI bus to settle after 
  48. changing certain control signals.
  49.  
  50. Bus Free Delay.  The minimum time that an SCSI device must wait from its 
  51. detection of BUS FREE phase until it may assert BSY and its ID bit.
  52.  
  53. Bus Set Delay.  The maximum time that an SCSI device may wait to assert BSY 
  54. and its ID bit after BUS FREE phase was last detected if it intends to 
  55. participate in the ARBITRATION phase.
  56.  
  57. Bus Clear Delay.  The maximum time for an SCSI device to stop driving all 
  58. signals after BUS FREE phase is detected, after SEL is received during 
  59. ARBITRATION phase, or after RST becomes true.
  60.  
  61. Arbitration Delay.  The minimum time that an SCSI device must wait after 
  62. asserting BSY for arbitration until it may examine the DATA BUS to determine 
  63. whether it won.  There is no maximum time.
  64. .pa
  65.  
  66. .. Figure A1 goes here.
  67. .pa
  68.  
  69. DATA BUS NOTES:
  70.  
  71.   (1)  DB(7) is the most significant bit.
  72.  
  73.   (2)  DB(7) is the highest priority arbitration bit.
  74.  
  75.   (3)  DB(P) is the data parity bit (odd).  Parity is not valid during the 
  76. ARBITRATION phase.  Use of parity is a system option (i.e., a system is 
  77. configured so that all SCSI devices on a bus generate parity and have parity 
  78. detection enabled, or all SCSI devices have parity detection disabled or not 
  79. implemented).
  80.  
  81. BUS PHASE NOTES:
  82.  
  83. BUS FREE phase.  BUS FREE phase begins when SEL and BSY are both continuously 
  84. false for a bus settle delay.  It ends when SEL or BSY becomes true.
  85.  
  86. ARBITRATION phase.  Implementation of this phase is optional.  If there is 
  87. more than one initiator, then all initiators must implement this phase.  
  88. Targets that do not implement this phase cannot disconnect from the bus until 
  89. the command has completed.  SCSI devices that implement the COPY command must 
  90. implement ARBITRATION phase.
  91.  
  92.   At least one bus free delay after first detecting BUS FREE phase, but no 
  93. more than a bus set delay after the bus was last free, the initiator asserts 
  94. BSY and its assigned SCSI device ID bit on the DATA BUS.  The initiator waits 
  95. an arbitration delay, then examines the DATA BUS.  If a higher priority SCSI 
  96. device ID bit is true, the initiator loses arbitration and releases BSY and 
  97. its ID bit.  Otherwise, the initiator wins arbitration and asserts SEL.  SCSI 
  98. devices must release BSY and their ID bit within a bus clear delay after SEL 
  99. becomes true (even if they have not yet examined the DATA BUS).
  100.  
  101.   The winning SCSI device waits at least a bus clear delay plus a bus settle 
  102. delay after asserting SEL before changing any signals on the bus.
  103.  
  104. SELECTION phase.  The I/O signal is false during this phase to distinguish it 
  105. >From the RESELECTION phase.
  106.  
  107.   NON-ARBITRATING SYSTEMS:  In such systems, the initiator waits at least a 
  108. bus clear delay after detecting BUS FREE phase, then it asserts the target's 
  109. ID bit and, optionally, the initiator's ID bit on the DATA BUS.  After at 
  110. least two deskew delays, the initiator asserts SEL.
  111.  
  112.   ARBITRATING SYSTEMS:  In such systems, the SCSI device that won arbitration 
  113. has both BSY and SEL asserted.  After at least a bus clear delay plus a bus 
  114. settle delay, it places both the target's and the initiator's ID bits on the 
  115. DATA BUS.  At least two two deskew delays later, it releases BSY.
  116.  
  117.   ALL SYSTEMS:  The target determines that it is selected when SEL and its 
  118. SCSI ID bit are true and BSY and I/O are false for at least a bus settle 
  119. delay.  The target then asserts BSY within a selection abort time after it 
  120. last determined that it was still being selected.  (The target is not required 
  121. to respond to a selection within a selection abort time;  but it must insure 
  122. that it will not assert BSY more than a selection abort time after the 
  123. initiator aborts a selection attempt.)
  124.  
  125.  
  126. .fo Appendix A                         176.1
  127.   At least two deskew delays after the initiator detects BSY true, it releases 
  128. SEL and may change or release the DATA BUS.
  129.  
  130. COMMAND phase.  The target asserts C/D and negates I/O and MSG for all of the 
  131. bytes transferred during this phase.  The direction of transfer is from the 
  132. initiator to the target.
  133.  
  134.   HANDSHAKE PROCEDURE:  The target asserts REQ.  Upon detecting REQ true, the 
  135. initiator drives the DATA BUS to the desired value, waits at least one deskew 
  136. delay plus a cable skew delay and then asserts ACK.  The initiator continues 
  137. to drive the DATA BUS until REQ is false.
  138.  
  139.   When ACK is true at the target, the target reads the DATA BUS and then 
  140. negates REQ.
  141.  
  142.   When REQ becomes false at the initiator, the initiator may change or release 
  143. the DATA BUS and negate ACK.
  144.  
  145.   The target may continue to request command bytes by asserting REQ again.  
  146. The number of command bytes is determined by the group code (most significant 
  147. 3 bits) that is contained in the first command byte.
  148.  
  149. DATA IN phase.  The target asserts I/O and negates C/D and MSG for all of the 
  150. bytes transferred during this phase.  The direction of transfer is from the 
  151. target to the initiator.
  152.  
  153.   HANDSHAKE PROCEDURE:  The target first drives the DATA BUS to their desired 
  154. values, waits at least one deskew delay plus a cable skew delay, and then 
  155. asserts REQ.  The target continues to drive the DATA BUS until ACK is true.
  156.  
  157.   When REQ is true at the initiator, the initiator reads the DATA BUS and then 
  158. asserts ACK.
  159.  
  160.   When ACK is true at the target, the target may change or release the DATA 
  161. BUS and negate REQ.
  162.  
  163.   When REQ is false at the initiator, the initiator negates ACK.  After ACK is 
  164. false, the target may continue the transfer by driving the DATA BUS and 
  165. asserting REQ as described above.
  166.  
  167. DATA OUT phase (not shown in the figure).  The target negates C/D, I/O, and 
  168. MSG for all of the bytes transferred during this phase.  The direction of 
  169. transfer is from the initiator to the target.  (Refer to the handshake 
  170. procedure and the timing chart for the COMMAND phase.)
  171.  
  172. STATUS phase.  The target asserts C/D and I/O and negates MSG for the byte 
  173. transferred during this phase.  The direction of transfer is from the target 
  174. to the initiator.  (Refer to the handshake procedure and the timing chart for 
  175. the DATA IN phase.)
  176.  
  177. MESSAGE phase.  The target C/D, I/O, and MSG during the byte transferred 
  178. during this phase.  Typically, a COMMAND COMPLETE message would be sent at 
  179. this point.  The direction of transfer is from the target to the initiator.  
  180. (Refer to the handshake procedure and the timing chart for the DATA IN phase.)
  181.  
  182. BUS FREE phase.  The target returns to BUS FREE phase by releasing BSY.  Both 
  183.  
  184. the target and the initiator release all bus signals within a bus clear delay 
  185. after BSY is continuously false for a bus settle delay.
  186. .fo Appendix A                         176.2
  187. .pa
  188.  
  189. 
  190. .pn 177
  191. .fo Appendix B                           #
  192. Appendix B
  193.  
  194. Typical Bus Phase Sequence
  195.  
  196. This appendix is included to provide an example of the SCSI bus phase sequence 
  197. for a typical READ command (Tables B1 and B2).  In this example, the target 
  198. does not disconnect from the SCSI bus prior to completing the command.
  199.  
  200.                                    Table B1
  201.                      Typical READ Command Phase Sequence
  202.  
  203. ==============================================================================
  204.                                    Signals
  205.                ---------------------------------------------------------------
  206.                B  S  A  M  C  I  R  A  R    D    D
  207.                S  E  T  S  /  /  E  C  S    B    B
  208. Bus Phase      Y  L  N  G  D  O  Q  K  T  (7-0) (P)    Comment
  209. ------------------------------------------------------------------------------
  210. BUS FREE       -  -  -  -  -  -  -  -  -    -    -     SCSI bus is available. 
  211.  
  212. ARBITRATION    1  -  -  -  -  -  -  -  -    ID   X     Initiator tries to get 
  213.      "            1                                    the SCSI bus.
  214.  
  215. SELECTION      1  1  1  -  -  -  -  0  -  ID I,T V     Initiator has SCSI bus 
  216.      "         -  1                       ID I,T V     and selects a target.
  217.      "         1  1                       ID I,T V     ATN is on. 
  218.      "         1  -                         X    X
  219.  
  220. MESSAGE OUT    1  -  1  1  1  0  0  0  -    X    X     Target has control of
  221.      "               1           1  0       X    X     the bus and gets the 
  222.      "               1           1  0       X    X     IDENTIFY message from
  223.      "               1           1  1    Message V     the initiator. 
  224.      "               1           0  1       X    X
  225.      "               0           0  0       X    X
  226.  
  227. COMMAND        1  -  0  0  1  0  0  0  -    X    X     Target gets a command 
  228.      "                           1  0       X    X     from the initiator. 
  229.      "                           1  1    Command V     (This phase is repeated 
  230.      "                           0  1       X    X     for each byte.)
  231.      "                           0  0       X    X
  232. ==============================================================================
  233. .pa
  234.  
  235.                                    Table B2
  236.                Typical READ Command Phase Sequence (Continued)
  237.  
  238. ==============================================================================
  239.                                    Signals
  240.                ---------------------------------------------------------------
  241.                B  S  A  M  C  I  R  A  R    D    D
  242.                S  E  T  S  /  /  E  C  S    B    B
  243. Bus Phase      Y  L  N  G  D  O  Q  K  T  (7-0) (P)    Comment
  244. ------------------------------------------------------------------------------
  245. DATA IN        1  -  0  0  0  1  0  0  -    X    X     Target sends data to 
  246.      "                           1  0  Read Data V     the initiator.  (This
  247.      "                           1  1       X    X     phase is repeated for
  248.      "                           0  1       X    X     each byte.)
  249.      "                           0  0       X    X
  250.  
  251. STATUS         1  -  0  0  1  1  0  0  -    X    X     Target sends status to 
  252.      "                           1  0    Status  V     the initiator. 
  253.      "                           1  1       X    X
  254.      "                           0  1       X    X
  255.      "                           0  0       X    X
  256.  
  257. MESSAGE IN     1  -  0  1  1  1  0  0  -    X    X     Target sends a COMMAND 
  258.      "                           1  0    Message V     COMPLETE message to the
  259.      "                           1  1       X    X     initiator. 
  260.      "                           0  1       X    X
  261.      "                           0  0       X    X
  262.  
  263.  
  264. BUS FREE       -  -  -  -  -  -  -  -  -    -    -     SCSI bus is available. 
  265. ==============================================================================
  266.  
  267. Key:  -       =  Signal driver is passive.
  268.       0       =  Signal is false.
  269.       1       =  Signal is true.
  270.       "Blank" =  Signal state is the same as the previous line.
  271.       ID      =  SCSI ID for arbitration.
  272.       ID I,T  =  SCSI ID of initiator and target.
  273.       V       =  Parity is valid.
  274.       X       =  The signal is not guaranteed to be in a known state.
  275. .pa
  276.  
  277. 
  278. .pn 179
  279. .fo Appendix C                           #
  280. Appendix C
  281.  
  282. SCSI System Operation
  283.  
  284. This appendix is included to provide an explanation of the relationship of the 
  285. various pieces of an SCSI system.  This appendix also provides additional 
  286. information about the use of SCSI in a multi-tasking system.  Such systems 
  287. typically use a host adapter printed-circuit board to interface from the host 
  288. memory to the SCSI bus.  Although other architectures are possible (including 
  289. native or imbedded SCSI), the host adapter logic still exists as part of the 
  290. system.  The term "initiator" is used throughout this standard to encompass 
  291. all such architectures.  The term "host adapter" is used within this appendix 
  292. to refer to the logic that interfaces from the host memory to the SCSI bus.
  293.  
  294. C1. Host Memory / Host Adapter / SCSI Controller Relationship
  295.  
  296. The SCSI architecture utilizes the concept of host memory blocks for command, 
  297. data, and status interchange between the host system and the SCSI controller.  
  298. In the middle of this exchange is the SCSI host adapter, which acts as the 
  299. SCSI peripheral's gateway into host memory.  The host adapter is an important 
  300. portion of the overall intelligence of SCSI.  Along with providing an 
  301. information path from the SCSI bus to the host bus, the host adapter is 
  302. intimately involved in assuring data integrity and proper performance of the 
  303. I/O subsystem. 
  304.  
  305.   In order to fully understand SCSI operation, the concepts of I/O memory 
  306. blocks and logical threads must be detailed.  Figure C1 presents a block 
  307. diagram of a single host/single peripheral SCSI I/O subsystem.  The host 
  308. memory contains three I/O blocks:  command, data, and status.  The SCSI 
  309. controller needs to read the command block and write to the status block in 
  310. order to perform the task specified by the host (in the command block).  
  311. Likewise, the controller needs to both read and write the data block.  As was 
  312. previously mentioned, the SCSI controller "reaches into host memory" via the 
  313. SCSI host adapter.  The host adapter must know the addresses of the command, 
  314. data, and status blocks in order for it to "reach" into the right spot in 
  315. memory.  In other words, the host adapter must be given a pointer to the start 
  316. of each block by the host.  As the SCSI controller takes information from the 
  317. command block, the memory pointer for the command block advances to the 
  318. next byte.  The same is true for the data and status pointers.
  319.  
  320.   SCSI architecture provides for two sets of three pointers within the host 
  321. adapter.  The first set is known as the current (or active) pointer values.  
  322. These are the pointers to the next command, data, or status byte to be 
  323. transferred between the host memory and the SCSI controller.  There is only 
  324. one set of current pointers in the host adapter.  The current pointers are 
  325. shared amoung all devices and are used by the current device connected to the 
  326. host adapter.  The second set is known as the saved pointer values.  There is 
  327. one set of saved pointers for each supported logical thread.  For command and 
  328. status, these pointers always point to the start of the memory command block 
  329. and memory status block.  The saved data pointer points to the start of the 
  330. data block at the beginning of the SCSI command.  It remains at this value 
  331. until the controller sends a SAVE DATA POINTER message to the host adapter 
  332. which in turn saves the value of the current data pointer.  The controller may 
  333. retrieve the saved value by sending a RESTORE POINTERS message.  This moves 
  334. the saved value of each pointer into the current pointer registers.  Whenever 
  335. an SCSI device disconnects from the bus, only the saved pointer values are 
  336.  
  337. retained.  The current pointer values are set from the saved values upon the 
  338. next reconnection.  The current and saved pointers provide an efficient means 
  339. of error retry and recovery during large data exchanges on the SCSI bus.
  340.  
  341. C2. SCSI READ Command Example
  342.  
  343. One method to understanding the host/host adapter/SCSI peripheral relationship 
  344. is via an example.  Let us consider the case of a multiple sector READ command 
  345. that will cross a cylinder boundary on a direct-access device such as a disk.
  346.  
  347.   The first activity in the I/O operation is for the system to create a 
  348. command descriptor block in memory and determine where the data and status are 
  349. to be written in host memory.  The host then sends a command to the host 
  350. adapter that includes the starting address (pointer) for each of the command, 
  351. data, and status blocks and the SCSI address of the peripheral to perform the 
  352. operation.  In this example, there is only one SCSI controller and physical 
  353. disk, but its address is required in order for the host adapter to select it.
  354.  
  355.   Upon receiving the command, the host adapter arbitrates for the SCSI bus and 
  356. wins (due to the lack of competing devices) and proceeds to select the target 
  357. SCSI device with the ATN signal asserted.  The ATTENTION condition indicates 
  358. to the SCSI target that the initiator (the host adapter) has a message to send 
  359. to the target.
  360.  
  361.   After the SELECTION phase is completed, the disk controller responds to the 
  362. initiator's ATTENTION condition by receiving a message from the initiator.  
  363. This message, generated by the host adapter, indicates the desired logical 
  364. unit number in the target and whether the initiator can support bus 
  365. disconnect.  In this example, the initiator supports disconnect.
  366.  
  367.   Input/output activity from this point will be controlled entirely by the 
  368. target.  The host adapter is simply an "arm" of the target used to reach into 
  369. host memory.  Utilizing this arm, the target reads in the command descriptor 
  370. block (CDB).
  371.  
  372.   After decoding the instruction, the controller determines that a disk seek 
  373. is required to get the starting data block.  Since the SCSI bus will not be 
  374. utilized until data has been read from the disk, the target controller 
  375. disconnects from the bus.  The disconnect process includes the transmission of 
  376. a SAVE DATA POINTER message and DISCONNECT message from the target to the host 
  377. adapter.  The host adapter responds to the SAVE DATA POINTER message by saving 
  378. the current data pointer, which is still set to the start of the data block.  
  379. After transmission of the DISCONNECT message the target will release BSY, 
  380. freeing the bus.
  381.  
  382.   Although the initiator host adapter and target disk controller are 
  383. disconnected, they are logically connected or, "threaded", together.  Both 
  384. devices know they have a command to finish and will return to that job at a 
  385. later point in time.  The principle of logical threads allows many I/O 
  386. commands to execute in the system simultaneously, utilizing a single physical 
  387. bus.  The thread is actually not between the host adapter and the disk 
  388. controller, but runs all the way from the host memory I/O block to the 
  389. peripheral device performing the operation. (See Figure C2 for a pictorial 
  390. presentation of this concept.)
  391.  
  392.   Once the target has started filling its data buffers, it can transmit data 
  393.  
  394. to the initiator, but first it must reestablish the physical path.  The 
  395. reselection process involves the target arbitrating for the bus and 
  396. reselecting the host adapter.  After the physical reconnection is made, the 
  397. target sends an IDENTIFY message to the host adapter to indicate which target 
  398. logical unit is reconnecting.  This information provides reconnection, to the 
  399. correct thread into host memory.  After reconnection, the roles of the 
  400. initiator and target are just as they were prior to disconnect.  The target 
  401. transfers data into host memory via the host adapter.  The data transfer 
  402. continues until the disk reaches the end of its cylinder and the disk 
  403. controller determines that a second physical seek is required to complete the 
  404. READ command.  The target again performs a SAVE DATA POINTER message and a 
  405. DISCONNECT message.  However, this time the current data pointer is not at the 
  406. beginning of the memory data block.  The saved value at disconnect reflects 
  407. the change.
  408.  
  409.   After seek completion and transfer of data into its buffer, the controller 
  410. reconnects to the host adapter and completes the data transfer as requested by 
  411. the READ command.  At this point, the controller sends ending status into host 
  412. memory via the host adapter.  The final action of the target is to send to the 
  413. host adapter a COMMAND COMPLETE message and disconnect from the SCSI bus.  The 
  414. target has completed its operation and considers the logical thread broken.
  415.  
  416.   Upon receipt of the COMMAND COMPLETE message, the host adapter signals the 
  417. host that the I/O command is complete.  This signal can be an interrupt or the 
  418. setting of a flag read by the host in a polled I/O environment.  This action 
  419. by the host adapter breaks the thread between the host adapter and the I/O 
  420. memory blocks of the host.  The host reviews the status of the operation in 
  421. the status block and proceeds to utilize the data transferred into the data 
  422. block.
  423.  
  424. C3. I/O Channel Concept
  425.  
  426. The I/O channel concept fully utilizes the high performance capability of 
  427. SCSI.  The I/O channel is basically an intelligent SCSI host adapter that can 
  428. maintain multiple simultaneous threads between host memory I/O blocks and 
  429. different SCSI devices. 
  430.  
  431.   The I/O channel utilizes a single direct memory access (DMA) path into host 
  432. memory supporting the DMA operations of numerous SCSI peripherals.  Since the 
  433. SCSI bus is a single physical bus and most host computers have a single 
  434. physical backplane bus, multiple DMA channels into memory are not necessary.  
  435. In many implementations of a multiple DMA channel architecture, when a channel 
  436. is accessing memory, all other channels are idle.  In such implementations, a 
  437. single channel supporting multiple threads can supply the same performance as 
  438. separate DMA peripherals.  An obvious advantage to the host is lower system 
  439. cost as well as the saving in backplane card slots.
  440.  
  441.   In the READ command example discussed in Section C2, the I/O channel is the 
  442. SCSI host adapter.  The host gives the I/O channel a command by providing it 
  443. with pointers to the I/O memory blocks and the SCSI peripheral address.  This 
  444. establishes a thread between the host adapter and the host I/O memory blocks.  
  445. The I/O channel then opens a subchannel that is assigned the task of managing 
  446. the physical link and logical thread between the host adapter and the target 
  447. controller.  All physical connections and reconnections to the host adapter 
  448. are managed by this subchannel.  The number of active or open subchannels an 
  449. I/O channel can support is totally dependent upon its design.  The SCSI 
  450.  
  451. definition could, in theory, support an I/O channel with up to 56 subchannels 
  452. (14,336 subchannels, if the EXTENDED IDENTIFY message is implemented).
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.  
  485.  
  486.  
  487.  
  488.  
  489.  
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.                 Figure C1. Snapshot Prior to Initial Selection
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.                   Figure C2. Snapshot Prior to Data Transfer
  564.  
  565. 
  566. .pn 184
  567. .fo Appendix D                           #
  568. Appendix D  
  569.  
  570. Recommended Shielded Connectors
  571.  
  572.  
  573. Three alternative shielded connector systems are defined by this appendix.  
  574. For each alternative, the connector shielding system shall provide a dc 
  575. resistance of less than 10milliohms from the cable shield at its termination 
  576. point to the SCSI device enclosure.
  577.  
  578.   In order to support daisy-chain connections, SCSI devices that use shielded 
  579. connectors should provide two shielded device connectors on the device 
  580. enclosure.  These two connectors may be wired "one-to-one" with a stub to the 
  581. SCSI device's drivers and receivers provided the maximum stub length is not 
  582. violated.  Alternatively, two cables may be run from the two shielded 
  583. connectors to the drivers and receivers so that the maximum stub length is not 
  584. violated.  The length of the cable within the device enclosure is included 
  585. when calculating the total cable length of the SCSI bus.
  586.  
  587.   D1 Shielded Connector, Alternative 1.  The shielded cable connector 
  588. (Figure D1) shall be a 50-conductor connector consisting of two rows of 25 
  589. female contacts with adjacent contacts 2.54 mm (0.1 in) apart.  The nonmating 
  590. portion of the connector is shown for reference only.
  591.  
  592.   The shielded SCSI device connector (Figure D2) shall be a 50-conductor 
  593. connector consisting of two rows of 25 male pins with adjacent pins 2.54 mm 
  594. (0.1 in) apart.  The nonmating portion of the connector is shown for reference 
  595. only.
  596.  
  597.   The connector pin assignments shall be as shown in Table 4-1 for single-
  598. ended drivers and as shown in Table 4-2 for differential drivers.
  599.  
  600.   D2 Shielded Connector, Alternative 2.  The shielded device connector 
  601. (Figure D3) shall be a 50-conductor connector consisting of two rows of ribbon 
  602. contacts spaced 2.16 mm (0.085 in) apart.  The nonmating portion of the 
  603. connector is shown for reference only.  FCC document Part 68 Subpart F 68.500 
  604. should be used for reference.
  605.  
  606.   The shielded cable connector (Figure D4) shall be a 50-conductor connector 
  607. consisting of two rows of ribbon contacts spaced 2.16 mm (0.085 in) apart. The 
  608. nonmating portion of the connector is shown for reference only.
  609.  
  610.   The connector pin assignments shall be as shown in Table D1 for single-ended 
  611. drivers and as shown in Table D2 for differential drivers.
  612.  
  613.   D3 EUROCARD Boxes  For boards in EUROCARD boxes (IEC 297 or DIN 41494) the 
  614. EMI-screen may be in the front of the boards and in this case a screened cable 
  615. and connector may be attached through the front panel to the board connector 
  616. specified in section 4.3.  It is thereby possible to use the flat ribbon cable 
  617. specified in this standard or the shielded cable, as required by users.
  618. .pa
  619.  
  620.  
  621.  
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.        Figure D1a. Female Shielded SCSI Cable Connector, Alternative 1
  674. .pa
  675.  
  676. ==============================================================================
  677. Dimensions    Millimeters              Inches              
  678. ------------------------------------------------------------------------------
  679.    A1         60.96 + 0.15             2.400 + 0.006       
  680.    A2         66.29 + 0.18             2.610 + 0.007
  681.    A3          2.54 + 0.15             0.100 + 0.006
  682.    A4          2.54 + 0.15             0.100 + 0.006
  683.    A5          8.56 + 0.41             0.337 + 0.016       
  684.    A6         11.93 Minimum            0.470 Minimum       
  685.    A7         65.02 + 0.18             2.560 + 0.007
  686.    A8          5.46                    0.215               
  687.    A9          4.14 + 0.25             0.163 + 0.010       
  688.    A10        60.20 Maximum            2.370 Maximum       
  689.    A11         6.60                    0.260               
  690.    A12         1.27 Maximum            0.050 Maximum       
  691.    A13         0.64 Maximum            0.025 Maximum       
  692.    A14         6.604 + 0.25, - 0.13    0.260 + 0.010, - 0.005
  693.    A15        13.46                    
  694. .fo Appendix E                           #
  695. Appendix E
  696.  
  697. Conformance
  698.  
  699. This appendix contains recommendations on conformance statements to this 
  700. standard.
  701.  
  702. E1.  Alternatives
  703.  
  704. This standard contains various alternatives that are mutually exclusive within 
  705. a system.
  706.  
  707.   (1)  Single-ended or differential drivers.
  708.   (2)  Termination power supplied by the cable or not.
  709.   (3)  Parity implemented or not.
  710.   (4)  "Hard" RESET or "soft" RESET.
  711.   (5)  Reservation queuing implemented or not.
  712.  
  713. E2.  Levels of Conformance
  714.  
  715.   By specifying which alternatives (listed above) are implemented, an 
  716. environment is created enabling different features to be implemented.  These 
  717. features are divided into three nested minimum levels as shown in Table E1.
  718.  
  719.                                    Table E1
  720.                             Levels of Conformance
  721.  
  722. ==============================================================================
  723. Level        Initiator                           Target
  724. ------------------------------------------------------------------------------
  725.   0     Accept COMMAND COMPLETE        Implement the mandatory commands   
  726.         message.                       of section 7.                      
  727.                                                                           
  728.         Accept GOOD and CHECK          Implement the mandatory commands   
  729.         CONDITION status codes.        of the supported device type(s).   
  730.                                                                           
  731.                                        Implement the COMMAND COMPLETE     
  732.                                        message.                           
  733.                                                                           
  734.                                        If messages other than COMMAND     
  735.                                        COMPLETE are implemented, then     
  736.                                        implement MESSAGE REJECT message   
  737.                                        also.                              
  738.                                                                           
  739.                                        Implement GOOD and CHECK CONDITION 
  740.                                        statuses.                          
  741. ------------------------------------------------------------------------------
  742.   1     Same as above plus             Same as above.
  743.         ARBITRATION phase.
  744. ------------------------------------------------------------------------------
  745.   2     Same as above plus             Same as above plus implement the
  746.         accept DISCONNECT,             MESSAGE REJECT and IDENTIFY messages
  747.         MESSAGE REJECT,                and implement all extended commands
  748.         IDENTIFY, and SAVE             in section 7 and for the supported
  749.         DATA POINTER messages          device type(s).
  750. ==============================================================================
  751.  
  752. E3.  Options
  753.  
  754. E3.1  Optional Commands.  This standard specifies a number of additional 
  755. commands that can be implemented in each level.  Some of these commands, if 
  756. implemented, require the implementation of other optional commands, messages, 
  757. or both.  In this case, these additional commands, messages, or both shall 
  758. also be implemented.
  759.  
  760. E3.2  Optional Messages.  This standard specifies a number of additional 
  761. optional messages that may be implemented at any level.
  762.  
  763. E3.3  Other options.  Within some commands, additional features, called 
  764. "options", are described.  These options need not necessarily be implemented.
  765.  
  766. E4.  Statement of Conformance
  767.  
  768. Any statement of conformance to this standard should declare which of the 
  769. alternates listed in section E1 and which of the three conformance levels are 
  770. implemented.  In addition, it should indicate which of the options listed in 
  771. section E3 are implemented, if any.  In the case of optional messages, the 
  772. conformance statement should state whether the message is generated, accepted, 
  773. or both.
  774.  
  775.   If the synchronous data transfer option is implemented, any statement of 
  776. conformance should so indicate and state both the maximum REQ/ACK offset and 
  777. the minimum transfer period implemented.
  778. .pa
  779.  
  780. 
  781. .pn 195
  782. .fo Appendix F                           #
  783. Appendix F
  784.  
  785. Additional Medium Type and Density Code Standards
  786.  
  787. In sections 8 and 9 of this standard, the MODE SELECT and MODE SENSE commands 
  788. define medium type codes and density codes for certain flexible disks and 
  789. magnetic tapes.  ANSI standards or X3 draft documents are referenced for code 
  790. values if a standard or draft document exists for that code value.  In many 
  791. cases, other standards also exist for a code value.  Tables F1 and F2 in this 
  792. appendix provide references to those standards for these code values.
  793.  
  794. DISCLAIMER:  It is not the purpose of this appendix to indicate that these 
  795. standards are exactly equivalent to each other.  However, these standards may 
  796. be applicable.  Please refer to sections 8 and 9 for additional information 
  797. concerning the medium type or density code.
  798.  
  799.  
  800.                                  Table F1
  801.                        Direct-access Medium Type Codes
  802.  
  803. ==============================================================================
  804. Code Value                       Medium Type
  805. ----------  ------------------------------------------------------------------
  806.  00H-02H    See section 8.
  807.                    
  808.             Flexible Disk Reference Standard(s)
  809.             ------------------------------------------------------------------
  810.    05H      X3.73-1980,  ECMA-54,  ISO 5654/1-1984, ISO 5654/2-1982
  811.    06H      X3B8-140,    ECMA-59
  812.    09H      X3B8/78-139
  813.    0AH      X3.121-1984, ECMA-69,  ISO 7065/1-1985, ISO 7065/2-1985
  814.    0DH      X3.82-1980,  ECMA-66,  ISO 6596/1-1985, ISO 6596/2-1985
  815.    12H      X3.125-1984, ECMA-70,  ISO 7487/1-1985, ISO 7487/2-1985,
  816.                                    ISO 7487/3-1985
  817.    16H      X3.126-198X, ECMA-78,  DIS 8378/1,      DIS 8378/2,     DIS 8378/3
  818.    1AH      X3B8/85-199, ECMA-99,  DIS 8630/1,      DIS 8630/2
  819.    1EH      X3.137-198X, ECMA-100, DIS 8860/1,      DIS 8860/2
  820.  
  821.             Direct-access Magnetic Tape Standard(s)
  822.             ------------------------------------------------------------------
  823.    40H      X3B5/85-138 (Note 1),  ECMA TC19/83/39
  824.    44H      X3B5/85-138 (Note 1),  ECMA TC19/83/39
  825.  
  826. 80H _ FFH   Vendor unique
  827. All others  Reserved
  828. ==============================================================================
  829. NOTE:
  830.   (1)  The referenced standard is for unrecorded miniature cartridge media.  
  831. The usage referred to here is for serial GCR recording using a format known as 
  832. QIC-100.  Since X3B5 issues a new document number for each revision of their 
  833. working draft document, please contact the Chairman of X3B5 for the latest 
  834. document number.
  835. .pa
  836.  
  837.                                  Table F2
  838.                        Sequential-access Density Codes
  839.  
  840. ==============================================================================
  841. Code Value                             Density
  842. ----------  ------------------------------------------------------------------
  843.    00H      See section 9.
  844.  
  845.             Magnetic Tape Reference Standard(s)
  846.             ------------------------------------------------------------------
  847.    01H      X3.22-1983,                 ECMA-62
  848.    02H      X3.39-1973                  ECMA-62
  849.    03H      X3.54-1976,                 ECMA-62
  850.    04H      Old format known as QIC-11
  851.    05H      X3.136-198X,                ECMA-98
  852.    06H      X3B5/85-98 (Note 1)
  853.    07H      X3.116-198X,                ECMA-79
  854.    08H      X3B5/85-77 (Note 1)
  855.    09H      X3B5/85-76 (Note 1)
  856.    0AH
  857.    0BH      X3.55, X3.56-198X,          ECMA-46, ISO 4057-1979
  858.  
  859. 80H _ FFH   Vendor unique
  860. All others  Reserved
  861. ==============================================================================
  862. NOTES:
  863.   (1)  Working Draft.  X3B5 assigns a new document number to each revision of 
  864. their documents.  Please contact the Chairman of X3B5 for the latest document 
  865. number.
  866. .pa
  867.  
  868. 
  869. .fo Appendix G                           #
  870. Appendix G
  871.  
  872. Future Standardization
  873.  
  874. This appendix is included to provide insight into some possible future 
  875. extensions to SCSI that are being considered by X3T9.2.  Although X3T9.2 has 
  876. addressed some of these extensions, many details remain to be resolved.  
  877. Further work by X3T9.2 may result in changes or additions to these extensions.  
  878. Please contact the Chairman of X3T9.2 for the current status of this activity.
  879.  
  880.   Six new commands are being considered, three for targets that support 
  881. caching, one to provide a means to read the medium defect data, and two to 
  882. provide a standardized method for writing and reading the target's data buffer 
  883. (principally intended to support start-of-day tests that insure data path 
  884. integrity).  The tentative operation codes are as follows:
  885.  
  886. ==============================================================================
  887. Operation
  888.   Code      Type   Command Name             Device Types
  889. ------------------------------------------------------------------------------
  890.    34H       O     PRE-FETCH                \  Direct Access, Write-Once
  891.    35H       O     FLUSH CACHE               > Read-Multiple, and
  892.    36H       O     LOCK/UNLOCK CACHE        /  Read-Only Direct Access
  893.    37H       O     READ DEFECT DATA         Direct Access
  894.    3BH       O     WRITE BUFFER             All
  895.    3CH       O     READ BUFFER              All
  896. ------------------------------------------------------------------------------
  897.  
  898.  
  899.   New parameters are being considered in several of the existing commands:
  900.  
  901.   (1) Cache control bits are being considered for bits 3 and 4 of byte 1 in 
  902. several group 1 commands, including READ, WRITE, WRITE AND VERIFY, and VERIFY.
  903.  
  904.   (2) Byte 1 of the Defect List in the FORMAT UNIT command may be used to 
  905. provide additional defect management control.
  906.  
  907.   (3) Bits 0 _ 3 of byte 3 of the Inquiry Data in the INQUIRY command may be 
  908. used to identify that the device supports certain additions to the standard.  
  909. One such addition that is being considered is optional fields within the 
  910. Inquiry Data to identify the manufacturer and the product model information.
  911.  
  912.   (4) Extensions to the MODE SELECT and MODE SENSE commands are being 
  913. considered to provide a standard means to control certain target parameters.  
  914. Bits 0 _ 5 of byte 2 of the MODE SENSE command are being considered for use in 
  915. controlling which target parameters are returned by this command.
  916. .pa
  917.  
  918. 
  919. William E. Burr (Chairman)
  920. John B. Lohmeyer (Vice Chairman)
  921.  
  922. Ezra R. Alcudia                    Keith Amundsen  Alt
  923. J. L. Amstutz                      Karen Anneberg  
  924. Bob Bender                         Charles Brill 
  925. John Blagaila                      Larry Boucher 
  926. Tom Briggs                         Paul Clement  
  927. David T. Cornaby                   George E. Clark 
  928. David F. Craft, Jr.                Steve Cooper  
  929. Jay Cunningham                     Gary Crowell  
  930. Willard S. Davidson                Jon Ericson  
  931. Terry Dawson                       Tom Fiers 
  932. Phil Devin                         Stephen Fitzgerald  
  933. Louis C. Domshy                    Marty Francis  
  934. Norm Dornseif                      William Homans  
  935. Alan Ebright                       J. V. Howell  
  936. Anita  Freeman                     Skip Kilsdonk 
  937. Abe Gindi                          Jim Korpi 
  938. William A. Horton                  Lawrence J. Lamers  
  939. Frank Krulc                        Keith Mueller 
  940. Patrick E. Lannan                  Don Nanneman  
  941. Daniel Loski                       Doug Nolff  
  942. William C. Mavity                  Richard Reiser  
  943. Gene Milligan                      William H. Roberts  
  944. Bob Mortensen                      Floyd E. Ross 
  945. Gary S. Robinson                   D. Michael Robinson 
  946. Don Rodgers                        Jay Seashore  
  947. Arnold J. Roccati                  Chuck Spatafore 
  948. Jack Schiffhauer                   Jeff Stai 
  949. Ralph H. Schultz                   Paul Stavish  
  950. Moshe Segal
  951. Delbert L. Shoemaker 
  952. Tim Slaton 
  953. Robert N. Snively
  954. Adrienne Turenne 
  955. Norm Zimmerman 
  956. Ron Tranquilli 
  957. Bob Bender                         G. Atterbury 
  958. John Blagaila                      Charles Brill  
  959. Fred Ciechowski                    William E. Burr  
  960. George Clark                       Roger Cormier  
  961. Stephen W. Cooper                  Hank Dorris  
  962. Louis C. Domshy                    Thomas A. Fiers  
  963. Robert Dugan                       Henry Ginter 
  964. Ross H. Jaibaji                    William J. McClain 
  965. Patrick Lannan                     William Mosenthal, Jr. 
  966. Gene Milligan                      Kirk Moulton 
  967. Tom Morrow
  968. Mike Newton
  969. Gary S. Robinson
  970. Arnold John Roccati
  971. Floyd E. Ross
  972. Holly S. White
  973. SCSI secretariat target initiator synchronous asynchronous lsb msb 
  974. millimeter meter millimeters meters inch inches eia rs bsy sel msg req ack atn 
  975.  
  976. rst db arbitration skew deskew assertion selection reselection 
  977. parity 
  978. 0A 0B 0C 0D 0E 0F
  979. 1A 1B 1C 1D 1E 1F
  980. 2A 2B 2C 2D 2E 2F
  981. 3A 3B 3C 3D 3E 3F
  982. 4A 4B 4C 4D 4E 4F
  983. 5A 5B 5C 5D 5E 5F
  984. 6A 6B 6C 6D 6E 6F
  985. 7A 7B 7C 7D 7E 7F
  986. 8A 8B 8C 8D 8E 8F
  987. 9A 9B 9C 9D 9E 9F
  988. A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA AB AC AD AE AF
  989. B0 B1 B2 B3 B4 B5 B6 B7 B8 B9 BA BB BC BD BE BF
  990. C0 C1 C2 C3 C4 C5 C6 C7 C8 C9 CA CB CC CD CE CF
  991. D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 DA DB DC DD DE DF
  992. E0 E1 E2 E3 E4 E5 E6 E7 E8 E9 EA EB EC ED EE EF
  993. F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FB FC FD FE FF
  994. FFFFFFFF
  995. reladr filemark filemarks 
  996. eom ili peripheral peripherals optical priority priorities 
  997. descriptor descriptors selftest devofl unitofl bytchk reassign medium 
  998. diagnostic configuring standard standards standardization
  999. mandatory extended optional vendor unique reserve reserved reservation
  1000. term defect ascending sector track cylinder address addresses 
  1001. appendix appendixes 3rdpty id extent segment exclusive access shared
  1002. conflict conflicts logical unit sense select mode allocation
  1003. density densities flexible disk magnetic parameter byte bit bytes bits
  1004. immed immediate prevent prevention condition conditions status statuses es
  1005. capacity substantial pmi
  1006. recover recovered recoverable unrecovered unrecoverable 
  1007. seek verify verification search 
  1008. invert record spndat transfer equal equality inequality
  1009. offset displacement terminate pattern length field fields
  1010. specify specifies specifying
  1011. rdinh wrinh inhibit boundary subsequent beginning load point limit limits
  1012. residue operate operating operation
  1013. bytcmp miscompare buffer buffered bpi non inverted nrzi pe phase encoded gcr
  1014. recording group cartridge qic ansc ansi differential ended committee x3 x3t9
  1015. x3t9.2 subcommittee interfaces task conjunction characteristics characteristic
  1016. generators receivers receiver driver drivers balanced digital multipoint 
  1017. systems systems available electronic industries industry association eye 
  1018. street nw washington erase erased erases software hardware re-ten font slew 
  1019. channel flush retain check checks checking ebc wp crc ecc etc blkvfy
  1020. verified intermediate met tasking multi thread threaded reach reaches adapter 
  1021. host subchannel subchannels 
  1022. ns xx awg cdb dma emc esd ncr rmb xxx mil mils ohms abort daisy diode 
  1023. fonts octal octet queue queues queued queuing reset retry tries two's amoung 
  1024. append cmplst elects glitch polled ported pulses resend rewind rezero shroud 
  1025. subset subsets unit's update aborted advalid assists briefly buffers copying 
  1026. deleted detects disable ensure ensures extents fmtdata generic 
  1027. nonzero obtains options simular sourced termpwr timeout totally updates 
  1028. wichita accessed actively backflow diskette entirely equaling executes 
  1029. foreword imbedded mainline nonblank normally pointer pointers
  1030. connect connection connections interconnection interconnections connector 
  1031. connectors 
  1032.  
  1033. decoding device's diffsens disables reselect restores retrieve retrying 
  1034. snapshot target's undriven unsigned verifies accessing adversely backplane 
  1035. circuitry correctly executing impedance initially interlock logically 
  1036. lowercase megabytes milliohms nonlinked nonmating overflows precludes 
  1037. qualifier reconnect removable reselects resending submittal subscript 
  1038. subsystem suppliers tensioned trade offs typically unchanged unprinted 
  1039. unwritten uppercase adequately arbitrates configured contending disconnect 
  1040. exhaustive explicitly handshakes hysteresis identifier impedances initiators 
  1041. interleave internally intimately mismatches moderately nanosecond nongeneric 
  1042. optionally previously reassigned reconnects referenced reselected separately 
  1043. sequential terminator tolerances truncation unshielded addressable 
  1044. arbitrating disconnects effectively encompasses enumeration hexadecimal 
  1045. identically implementor initiator's integrators malfunction microsecond 
  1046. millisecond nanoseconds nonextended nonshielded permissible positioning 
  1047. reselecting terminators uncompleted unprocessed unsatisfied unspecified 
  1048. unsupported additionally collectively continuously determinable electrically 
  1049. implementors intentionally interrogated malfunctions milliseconds 
  1050. nonrecovered peripheral's programmable reconnecting reconnection 
  1051. reselectable subsequently successfully successively transferring 
  1052. architectures compatibility disconnecting disconnection effectiveness 
  1053. inadvertently misconnection noncumulative reconnections reestablish 
  1054. reestablished semiconductor nonarbitrating nonrecoverable unsuccessfully 
  1055. discontinuities electromagnetic implementations
  1056. mm od ol th IDs LSI LUN renegotiate renegotiation 
  1057. negate negates negated negating negation 
  1058. volt volts millivolt millivolts
  1059. amp amps milliamp milliamps
  1060. providing 
  1061. SASI VLSI dpANS backup Harvey Rosenfeld highly widely Adaptec Fujitsu Shugart 
  1062. adapters Adaptive megabyte Bernoulli floodtide unbounded physically processors 
  1063. subsystems intersymbol dramatically multibillion technologies alternatively 
  1064. comparatively formalization clarifications 
  1065. CPI discard nonfatal undefined incorrectly gaithersburg
  1066. CS MC DIS MFM CPMM ECMA IMFM radian cassette serially unrecorded
  1067. BSR FCC PRE cache caching subpart retension superceded superceding 
  1068. principally parenthetical
  1069. TC PN DIN EMI FRC IEC ISO BPMM FTPI FTPMM aborts redrew legible Amphenol 
  1070. EUROCARD mutually alternates computer's disclaimer necessarily
  1071. 
  1072.  
  1073.